﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;

namespace Real_Estate.Code.OBJ
{
    class Terreno :Imovel
    {
        //Construtor da classe terreno
        public Terreno(int TipoID1, string Cidade1, string Bairro1, string Negocio1, string CEP1, string Endereco1, string Numero1)
        {
            this.tipoid = TipoID1;
            this.cidade = Cidade1;
            this.bairro = Bairro1;
            this.negocio = Negocio1;
            this.cep = CEP1;
            this.endereco = Endereco1;
            this.numero = Numero1;
        }

        //Metodos para dados adicionais do terreno
        public override void AdicionaValor(decimal Valor1){
            this.valor = Valor1;
        }
        public override void AdicionaArea(decimal Area1)
        {
            this.area = Area1;
        }
        public override void AdicionaComp(string Comp1)
        {
            this.comp = Comp1;
        }
        public override void AdicionaDescricao(string Descricao1)
        {
            this.descricao = Descricao1;
        }

        public override float RetornaLat()
        {
            return lat;
        }

        public override float RetornaLng()
        {
            return lng;
        }

        //Calculo das coordenadas
        public override void CalculaPosicao()
        {
            Googlegeocode Geocode = new Googlegeocode(HttpUtility.UrlEncode(endereco + numero + "," + bairro + "," + cidade + ",SP,Brasil"));
            Geocode.CalculaCoordenadas();
            lat=Geocode.RetornaLat();
            lng=Geocode.RetornaLng();
        }
    }
}